package com.team2.outpatient_sys.service;

import com.team2.outpatient_sys.pojo.Authority;
import com.team2.outpatient_sys.pojo.Role;

import java.util.List;

public interface AdminRoleAuthorityService {
    /**
     * 获取所有角色信息的服务的规范
     * @return 获取到的所有角色信息的封装对象的集合
     */
    List<Role> getAllRole();

    /**
     * 获取所有权限信息的服务的规范
     * @return 获取到的所有权限信息的封装对象的集合
     */
    List<Authority> getAllAuthority();

    /**
     * 根据角色id查询指定角色所拥有的权限信息的服务的规范
     * @param roleId 需要查询的角色的id值
     * @return 查询到的指定角色的权限封装对象的集合
     */
    List<Authority> getAuthoritiesByRoleId(Integer roleId);

    /**
     * 根据角色id修改角色拥有的权限的服务的规范
     * @param roleId 角色的id
     * @param authorityList 应该拥有的权限的集合
     * @return 是否成功修改角色权限的真值
     */
    boolean updateRoleAuthorityByRoleId(Integer roleId, List<Authority> authorityList);
}
